#pragma once
#include "buffer.h"
#include "error_code.h"

namespace gfutilities{ namespace crypto
{
	using namespace memory;
//-------------------------------------------------------------------------------
class hasher
{
public:
	hasher(void){}
	virtual ~hasher(void){}

	buffer sha1(const unsigned char* data, long len);

protected:
	void hash(int hash_type, const unsigned char* data, long len, buffer& out_res);
};
//-------------------------------------------------------------------------------
}}